---
id: 659db3e3670d3e712be82593
title: Крок 22
challengeType: 20
dashedName: step-22
---

# --description--

Повторення процесу пошуку літери в алфавіті та визначення зміщеної літери для кожного символу в `text` може бути нудним. На щастя, ви можете спростити це, використавши цикл.

Наразі видаліть усі рядки коду після оголошення змінної `alphabet`.

# --hints--

Код досі повинен містити `text = 'Hello World'`.

```js
const commentless_code = __helpers.python.removeComments(code);
assert.match(commentless_code, /^text\s*=\s*("|')Hello World\1/m)
```

Код досі повинен містити `shift = 3`.

```js
const commentless_code = __helpers.python.removeComments(code);
assert.match(commentless_code, /^shift\s*=\s*3/m)
```

Код досі повинен містити `alphabet = 'abcdefghijklmnopqrstuvwxyz'`.

```js
const commentless_code = __helpers.python.removeComments(code);
assert.match(commentless_code, /^alphabet\s*=\s*("|')abcdefghijklmnopqrstuvwxyz\1/m)
```

Видаліть змінну `index` та її значення.

```js
const commentless_code = __helpers.python.removeComments(code);
assert.notMatch(commentless_code, /index\s*=/)
```

Код не повинен містити `print(index)`.

```js
const commentless_code = __helpers.python.removeComments(code);
assert.notMatch(commentless_code, /print\s*\(\s*index\s*\)/)
```

Видаліть змінну `shifted` та її значення.

```js
const commentless_code = __helpers.python.removeComments(code);
assert.notMatch(commentless_code, /shifted\s*=/)
```

Код не повинен містити `print(shifted)`.

```js
const commentless_code = __helpers.python.removeComments(code);
assert.notMatch(commentless_code, /print\s*\(\s*shifted\s*\)/)
```

Код містить недійсний синтаксис та/або недійсні відступи.

```js
({test: () => assert(true) })
```

# --seed--

## --seed-contents--

```py
--fcc-editable-region--
text = 'Hello World'
shift = 3
alphabet = 'abcdefghijklmnopqrstuvwxyz'
index = alphabet.find(text[0].lower())
print(index)
shifted = alphabet[index + shift]
print(shifted)
--fcc-editable-region--
```
